// 商品Spu相关接口类型

// spu销售属性值对象的接口类型
export interface SpuSaleAttrValueModel {
  id?: number
  spuId?: number // spu id
  baseSaleAttrId: number // 基础销售属性 id
  saleAttrValueName: string // 销售属性值名称
  saleAttrName?: string // 销售属性名称
  isChecked?: boolean // 是否被选中
}
// spu销售属性值对象数组的接口类型
export type SpuSaleAttrValueListModel = SpuSaleAttrValueModel[]
// spu销售属性对象的接口类型
export interface SpuSaleAttrModel {
  id?: number
  spuId?: number
  spuSaleAttrValueList: SpuSaleAttrValueListModel // 销售属性值对象数组
  baseSaleAttrId?: number
  saleAttrName: string
  isShowEdit?: boolean
}
// spu销售属性对象数组的接口类型
export type SpuSaleAttrListModel= SpuSaleAttrModel[]


// spu图片对象的接口类型
export interface SpuImageModel {
  id?: number
  spuId?: number
  imgName: string // 图片名称
  imgUrl: string // 图片地址
 
  name?: string // 上传图片名称
  url?: string // 上传图片地址
  response?: { // 上传图片响应的数据
    data: string
  }
  isDefault?: string // 默认选中
}
// spu图片对象数组的接口类型
export type SpuImageListModel = SpuImageModel[]


// spu对象的接口类型
export interface SpuModel {
  id?: number
  spuName: string
  description: string
  category3Id?: number
  tmId?: number
  spuSaleAttrList: SpuSaleAttrListModel // 销售属性对象数组
  spuImageList: SpuImageListModel // spu图片对象的数组
}
// spu对象数组的接口类型
export type SpuListModel = SpuModel[]

// 基础销售属性对象的接口类型
export interface BaseSaleAttrModel {
  id?: number
  name: string
}
// 基础销售属性对象数组的接口类型
export type BaseSaleAttrListModel = BaseSaleAttrModel[]


// spu分页列表展示的响应对象的接口类型
export interface SpuPageListModel {
  records: SpuListModel // spu对象列表数据
  total: number // 总条数
}
// spu分页列表请求参数对象的接口类型
export interface SpuPageListParamsModel {
  page: number
  limit: number
  category3Id: number
}